[アップデート] EC2 Image Builder が PrivateLink に対応しました
EC2 Image Builder が PrivateLink に対応しました。
EC2 Image Builder が AWS PrivateLink を介した接続のサポートを開始
やってみた
今回追加された VPC エンドポイントを利用し、インターネットに接続できないサブネットから Image Pipeline による AMI 作成を試してみました。
構成図
- AMI 作成用のサブネットとして Private subnet を指定
- Internet Gateway および NAT Gateway へのルート無し
- Image Builder の動作および yum による httpd のインストールに必要となるため、imagebuilder 以外の各種 VPC エンドポイントを作成
VPC およびサブネットの作成
構成図のとおりに検証用の VPC とサブネットを作成しました。
ImagePipeline の作成
こちら のテンプレートを使用して Image Pipeline を作成しました。
セキュリティグループの作成
Image Builder 用のインスタンスと VPC エンドポイントに利用する下記のセキュリティグループを作成します。(表にはインバウンドルールのみ記載。アウトバウンドルールはすべてを許可。)
セキュリティグループ名 | プロトコル | ソース | 備考 |
---|---|---|---|
ImageBuilderInstanceSecurityGroup | ※ルールなし | ※ルールなし | インスタンス用 |
ImageBuilderEndpointSecurityGroup | 443(HTTPS) | ImageBuilderInstanceSecurityGroup | VPC エンドポイント用 |
今回は検証を目的としているため、VPC エンドポイントには共通のセキュリティグループを割り当てます。
VPC エンドポイントの作成
EC2 Image Builder 用の VPC エンドポイントである com.amazonaws.region.imagebuilder
を作成しました。
EC2 Image Builder の仕組みは SSM Automation によって実現されているため、Private subnet で SSM を使用するために必要な下記の VPC エンドポイントもあわせて作成します。
com.amazonaws.region.ssm
com.amazonaws.region.ssmmessages
com.amazonaws.region.ec2messages
また、Image Pipeline の中で Amazon Linux 2 がyum -y install httpd
を実行するため、S3用のエンドポイントも作成します。
com.amazonaws.region.s3
参考:AWS Systems Manager / Create a Virtual Private Cloud endpoint
Image Pipelineの設定変更
上記の CFn テンプレートではネットワークの設定を施していないため、そのままではデフォルトVPCが使用されてしまいます。マネージメントコンソールから設定変更を行ないます。
EC2 Image Builder -> Image pipelines -> CFn-Pipeline -> Configration -> Configuration detailsの右側にある Edit をクリックし、ネットワーク設定の部分で今回作成したVPC・サブネット・インスタンス用のセキュリティグループ(ImageBuilderInstanceSecurityGroup)を指定します。
Image Pipeline を動かす
Run pipelineをクリックします。
しばらく待つとインスタンスが起動してきます。ここからさらに待ちます。
無事、AMI が作成されました。(地味)
終わりに
このブログがほんの少しでも世界を良くできれば嬉しいです。
コンサルティング部の西野 (@xiyegen) がお送りしました。